home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / vtkermit.arc / VT100.DOC < prev    next >
INI File  |  1986-02-13  |  8KB  |  155 lines

  1. [VT100.DOC] -- Documentation for VTKermit's VT100 emulation mode -- 6 Feb 86
  2.  
  3. VTKermit provides a very complete VT100 emulation feature.  "Very complete"
  4. isn't "complete" and VTKermit isn't a VT100, but for most standard uses
  5. VTKermit does everything anyone would ever need it to.
  6.  
  7. Among the VT100 features that are supported are:
  8.  
  9.   o  All cursor positioning
  10.   o  All screen and line clears
  11.   o  All feasible display attributes, limited by hardware
  12.   o  Region scrolling (absolute origin only)
  13.   o  All feasible line drawing graphic characters, limited by hardware
  14.   o  Device attributes ("what are you?")
  15.   o  Numeric keypad, numeric and application modes
  16.   o  LEDs L1-L4
  17.   o  Save and restore cursor
  18.   o  Printer support (most Media Copy functions, Control-PrtSc)
  19.  
  20. VT100 features *NOT* supported are:
  21.  
  22.   o  132 column mode (no horizontal scrolling either)
  23.   o  Black-on-white (white on black only)
  24.   o  Smooth scrolling
  25.   o  Split speeds (different transmit and receive baud rates)
  26.   o  Keyclick
  27.   o  Cursor shape control
  28.   o  Double high and wide characters
  29.   o  Autowrap is done wrong (wraps after 80th character instead of
  30.     before 81st)
  31.   o  VT52 mode (sorry)
  32.  
  33. Also, 5 new VT100-style escape sequences are defined.  All of these are
  34. variations on the VT100 screen clear, which we hope DEC and ANSI do not extend
  35. significantly in the future.
  36.  
  37. Standard:
  38.     ESC [ 0 J        -- Standard VT100 clear-to-end-of-screen
  39.     ESC [ 1 J        -- Standard VT100 clear-to-beginning-of-screen
  40.     ESC [ 2 J        -- Standard VT100 clear-entire screen
  41.  
  42. New:
  43.     ESC [ 1 7 J        -- Enter SERVER mode
  44.     ESC [ 1 8 J        -- Identify self as VTKermit -- VTKermit will send
  45.                ESC [ 9 9 c in response to this, a VT100 will do
  46.                nothing
  47.     ESC [ 1 9 J        -- Enter COMMAND-MODE
  48.     ESC [ 2 0 J        -- Exit directly to DOS
  49.     ESC [ 2 1 J        -- Preload a command for later execution
  50.  
  51. ESC[17J throws VTKermit into server mode.  This can be very useful in a case
  52. where a file uploading or downloading application is to be driven by the
  53. remote host computer.  In this application, the user tells the remote host
  54. what he wants done in some way, and the remote host throws the user's computer
  55. into server mode and SENDs or GETs whatever files it wants, sending a FINISH
  56. packet when done.  When the ESC[17J is received, the current screen will be
  57. saved and the normal file transfer screen displayed.  When the FINISH is
  58. received, the saved terminal mode screen will be redisplayed, providing visual
  59. continuity to the user.  This is a nice feature.
  60.  
  61. ESC[18J is like a Device Attributes ("what are you?") VT100 sequence, but is
  62. intended to determine whether the user is running VTKermit.  Since VTKermit
  63. claims to be a VT100 when queried with DA (ESC [ c), this is required if you
  64. want to use any of the additional features described here.
  65.  
  66. ESC[19J throws the user into command mode.  This is sometimes used in
  67. conjunction with ESC[21J, described below.
  68.  
  69. ESC[20J exits the program immediately.
  70.  
  71. ESC[21J begins a "preload mode" in which received text is saved in a "preload
  72. buffer" for later execution.  The "received text" should be 94 or fewer
  73. characters in length, and must be terminated with another ESCape.  This
  74. terminating escape must not be part of any ESCape sequence -- it is "eaten".
  75.  
  76. When terminal mode is exited, either by the user pressing F5 or closing the
  77. session with {escape character} C or with the ESC[19J sequence (or the script
  78. command COMMAND-MODE ...), then the "preloaded text" will be set up as an
  79. "instant macro".  Commas in the text will be converted to CRs, but double
  80. commas (",,") will be converted to single commas.  This is an extremely
  81. powerful feature that can permit some very fancy tricks.
  82.  
  83. For example, if VTKermit receives the sequence
  84.  
  85.            ESC [ 2 1 J s t a t u s , p u s h ESC ESC [ 1 9 J
  86.  
  87. it will preload the string "status,push", convert that into a "status {CR}
  88. push" macro and then execute it.  The user will see a STATUS display go by,
  89. followed by a PUSH.
  90.  
  91. Note that these escape sequences may be recognized in any text that flows
  92. through the VT100 emulation channel, so a PRINT command in a script file could
  93. be used to invoke them.  This enables a script file to execute VTKermit
  94. commands, which would not be possible otherwise.
  95.  
  96. For example, the script command
  97.  
  98.               PRINT /^[[21Jpush^[^[[19J/
  99.  
  100. will execute a PUSH from within a script.  Ugly perhaps, but functional.
  101.  
  102. Ordinarily, VTKermit will use color attributes on a color display adapter.  If
  103. you have a monochrome screen connected to a color adapter, the SET DISPLAY
  104. MONOCHROME command will change some attributes to be more readable on the
  105. monochrome screen.  This is the default on the IBM Portable PC.  If you have a
  106. color display connected to your Portable PC, give the SET DISPLAY COLOR
  107. command to get color attributes.
  108.  
  109. VTKermit's VT100 mode uses any of three different methods to display text on
  110. the screen.  (In command mode, and for the pop-up status display, normal DOS
  111. display calls are used.)
  112.  
  113. On a standard monochrome display, VTKermit updates its screen image in a local
  114. buffer then "blasts" the image out to B000:0000, the address of the monochrome
  115. card's display buffer.  This is effectively instantaneous.
  116.  
  117. If you are running in color mode and VTKermit thinks you are running on an
  118. Enhanced Graphics Adapter, it will use a method similar to the monochrome
  119. method, but will blast the image to B800:0000, the normal address of the color
  120. card's display buffer.  This is also effectively instantaneous, though the EGA
  121. hardware slows things down a little with wait states.
  122.  
  123. If, on the other hand, you are running on IBM's abysmal Color/Graphics Monitor
  124. Adapter (CGA), you will endure what is probably the slowest screen update
  125. imaginable.  The method used involves use of two pages of CGA display memory
  126. and a double-update retrace-synchronized display algorithm that is slow even
  127. on an 8 MHz AT.  *BUT*, the method has *NO SNOW* and *NO FLICKER* which are
  128. the dual failings of the CGA.
  129.  
  130. This seems to work perfectly on true IBM PCs with true CGAs, but all bets are
  131. off on other hardware.  It works on some, not on others.  Strangely, there is
  132. a BIOS bug (I guess) which occurs on some Compaqs and Morrow/Zenith Pivot IIs
  133. in which a "cancer" seems to eat the screen, slowly obscuring the displayed
  134. information.  Pressing F5 twice fixes the problem for a second, but then it
  135. starts again.  If you see this problem on your machine, try the hidden SET
  136. CARD EGA command, which forces the display update to use the EGA code.  This
  137. is much better for liquid crystal displays anyway, since it is much faster.
  138.  
  139. In any case, if your hardware is other than the CGA and the display update
  140. seems slow, try the SET CARD EGA command.  If you get snow, you are stuck with
  141. SET CARD COLOR.
  142.  
  143. There is also a SET CARD DEFAULT to let VTKermit decide what method to use.
  144. Naturally, this is the default.  In checking for an EGA, VTKermit looks for
  145. the system board equipment flags saying "no monitor", which is how an EGA
  146. machine should be set.  A BIOS call to check might be better, maybe next
  147. version.
  148.  
  149. Sadly, none of these work properly on some otherwise workable clones, such as
  150. the AT&T 6300.  From what I am told, the AT&T in color mode has both snow and
  151. "cancer", so it is mostly unusable.  I don't know why, but would be interested
  152. in the answer if anyone else knows or finds out.
  153.  
  154. [End of VT100.DOC]
  155.